국규 9566
다른 이름 | ISO-IR-202 (1997 버전) |
---|---|
언어 | 한국어, 영어, 러시아어 부분 지원: 그리스어, 일본어 |
표준 | KPS 9566 |
현재 상태 | 조선민주주의인민공화국에서만 사용 |
분류 | ISO-2022 호환 DBCS, CJK 인코딩 |
인코딩 포맷 | UHC 스타일 인코딩,[1] ISO 2022. |
그 밖의 관련 인코딩 | KS X 1001 |
국규 9566(KPS 9566)은 조선민주주의인민공화국에서 국가 규격으로 지정한 유일한 소위 조선어 문자 집합 및 문자 인코딩이며, 2003년에 제정된 국규 9566-2003이 최신이다. 국규 9566은 적어도 세 종류의 문자 집합 또는 인코딩을 정의하며 각각은 다음과 같다.
- 국규 9566-93: 1993년에 제정된 문자 집합으로 그 뒤의 표준과 호환성이 없고 거의 사용되지 않는다.
- 국규 9566-97과 9566-2000: 1997년에 제정되고 2000년에 개정된 문자 집합이다.
- 국규 9566-2003: 2003년에 제정된 문자 인코딩으로, EUC-KP 인코딩을 기반으로 CP949와 비슷한 방법으로 나머지 현대 한글(조선어문자)들을 모두 수록한 것이다. 그 외에 문자 집합 자체에 약간의 수정이 있었다. (공식적으로 EUC-KP는 등록되어있지 않다.)
국규 9566-97과 9566-2000은 EUC-KP 문자 인코딩으로 사용되는데, 이는 EUC-KR과 비슷하며 KS X 1001을 국규 9566으로 바꾼 것이다. 국규 9566-2003은 EUC-KP에서 인코딩할 수 없는 현대 한글들을 정규 EUC 영역 바깥에 추가한 것이며 기본적으로는 이전판과 하위 호환성이 있다. 하지만 이 인코딩들을 지원하는 프로그램이 거의 없기 때문에 현실적으로는 EUC-KR 등을 대신 사용하며, 문자 집합 자체는 국제 표준 등에서 참조 용도로만 사용하는 경우가 많다.
구성
[편집]국규 9566-2000은 94×94 문자 집합이며, 정렬을 제외한 전체적인 구조는 KS X 1001과 유사하다. 각 행들은 다음과 같이 구성되어 있다.
- 0x21 ~ 0x2C: 특수 문자 영역 (문장 부호, 그림 문자, 한글[조선어문자] 자모, 선 문자, 히라가나, 가타카나, 그리스 문자, 키릴 문자 등)
- 0x2F: 사용자 정의 영역 A
- 0x30 ~ 0x4C: 한글 영역. 자주 쓰이는 2679자를 조선민주주의인민공화국 자모 차례에 따라 배열했다.
- 0x4D ~ 0x7E: 한자 영역. 4653자를 한글(조선어문자)과 같이 독음 순서대로 배열했다.
- 0x4C행과 0x7E행의 0x50열부터는 각각 사용자 정의 영역 B·C이다.
국규 9566-2003에서 정의하는 기본 문자 집합은 2000년판의 문자 집합의 확장이며, 대략 다음과 같은 점이 다르다.
- 0x2E행에 ISO/IEC 8859-1에는 있지만 포함되지 않은 문자들을 모두 추가했다. (예를 들어, ë는 ISO/IEC 8859-1에서 0xEB에 있고 국규 9566-2003에서 0xAEEB에 배당된다)
- 유니코드와의 변환표를 4.0 버전에 맞춰서 변경하였다.
- 몇몇 문자들이 변경되거나 사라졌다. 예를 들어 0x28행 0x26열에 배당되었던 켈빈 기호가 유로화 기호(€)로 바뀌었고, 0x2C행 0x4F열의 문자가 사라졌다.
국규 9566-2003의 문자 인코딩은 8비트 문자 인코딩이며, 코드 페이지 949와 유사하다.
- 128보다 작은 바이트에 ASCII를 배당한다.
- 128보다 크거나 같은 두 바이트에 기본 94×94 문자 집합을 배당한다. 각 글자는 행과 열에 128을 더한 값을 사용하며, 행과 열 번호가 32 이상이기 때문에 실제로는 두 바이트는 161부터 254 범위에 있다.
- 기본 문자 집합에 없는 8493자의 현대 한글(조선어문자)을 조선민주주의인민공화국 자모 차례에 따라 배당한다. 이 문자들은 코드 페이지 949의 확장 한글 영역과 정확히 같은 곳에 위치해 있으며 첫째 바이트가 129부터 194까지인 것만 다르다.
국규 9566-2003에 할당된 16776자 중 총 22자가 당시 시점에서 유니코드에 포함되어 있지 않았고 그 중 16자는 특수 문자이다. 나머지 6자는 0x24행 0x68열부터 0x6D열까지 배치된 중복된 한글(조선어) 음절인 "김, 일, 성, 김, 정, 일"이며[2][3], 따라서 국규 9566은 유니코드와 왕복 변환(round trip)을 할 수 없다. 따라서 범용 문자 집합에다 이 글자들을 추가할 것이 요구되었으나 유니코드 컨소시엄은 2000년에 이를 거절하였다.[4][5]
유니코드 컨소시엄은 김씨 일가의 이름 및 조선노동당 기호(동그라미 쳐진것과 쳐지지 않은 것 총 두 개)를 제외한 나머지 특수 문자들을 유니코드에 추가하여 특수문자 2자와 중복된 한글(조선어) 음절인 "김, 일, 성, 김, 정, 일" 6자 총 8자가 유니코드에 포함되어있지 않게 되었다. 김정은이 3대 세습을 한 뒤에 김정은의 이름이 국규 9566 코드에 추가되면서 2014년 현재 시점에서 특수문자 2자, 중복된 한글 9자("김, 일, 성, 김, 정, 일, 김, 정, 은")가 유니코드에 등재되어 있지 않다.
각주
[편집]- ↑ The encoding format documented by Unicode here.
- ↑ “55 лет развития внешней торговли”. Внешняя торговля. 2005년 3월 1일. 2005년 5월 11일에 원본 문서에서 보존된 문서. 2010년 1월 5일에 확인함.
- ↑ “북한에는 김일성, 김정일 전용 특수문자가 있다!”. 2010년 4월 14일에 확인함.
- ↑ “보관된 사본” (PDF). 2016년 4월 9일에 원본 문서 (PDF)에서 보존된 문서. 2010년 4월 6일에 확인함.
- ↑ “보관된 사본”. 2016년 4월 9일에 원본 문서에서 보존된 문서. 2010년 4월 6일에 확인함.